Transmission of digital data is well-known in the art. Such transmission may occur over wire-lined transmission paths or wireless transmission paths. Such wireless transmission paths include radio frequency and optical, such as infrared (IR). For IR transmissions, a light transmitting diode is pulsed on and off to generate a light pulse, which is subsequently received by a light receiving diode. Such wireless IR communication requires that the receiving transmission diode be in the line of sight with the transmitting diode.
A wide variety of circuits utilize infrared transmission paths to communicate data from one device to another. For example, remote controls for televisions, radios, amplifiers, etc. use IR transmission paths to transmit data from the remote controller to the particular device. Current infrared technology developments have enabled computers to utilize infrared transmission paths. For example, an IR communication path may be established between a computer's central processing unit (CPU) and a printer. One such means of utilizing an IR path is based on an IrDA transmission standard of 4 PPM (four pulse position modulation).
4 PPM incorporates 500 nSec time slots, or chips, to obtain a four megabits per second data rate. Each of the 500 nSec times slots are divided into four equal time sections; where a data pulse may resided in any one of the four sections. If the pulse reside in the first section of a time slot, the data pulse represents a binary value of 00, if the pulse resides in the second section of the time slot, the data pulse represents a binary value of 01; if the pulse resides in the third section, the data pulse represents a binary value of 10, and if the pulse resides in the fourth section, the data pulse represents a binary value of 11. To accurately detect each of these four pulse positions, it is essential that the receiver's pulse width be preserved to prevent a pulse in one quadrant of a time slot from overlapping an adjacent quadrant.
A difficulty arises with infrared transmission due to the wide dynamic range (Eg. 100,000:1) of the infrared signal being transmitted. For example, if the transmitting diode and receiving diode are in close proximity (less than 0.01 meters), the current through the receiving diode may be as much as, or larger than 10 mAmps. If, however, the transmitting diode and receiving diode are a substantial distance apart (greater than 1 meters), the current through the receiving diode may be as small as, or smaller than, a 100 nAmps. Since pulse width control is essential to receiving 4 PPM accurately, then the pulse width must be preserved over the entire range.
When the current through the receiving diode is approximately 100 nAamps it can be difficult to detect when a pulse exists and in which section of a time slot it resides if the received pulse is not well controlled. Typically, to detect the presence of a pulse, a comparison circuit is used to compare an incoming data signal, which has been amplified, to a predetermined threshold. As apparent, when the magnitude of the incoming data signal is large, it is easy to detect. Conversely, when the magnitude of the incoming data signal is small, the ability to detect its presence becomes difficult, resulting in valid pulses not being detected.
One solution to more accurately detect widely varying magnitude data signals (Eg. 100 nAmp-10 mAmp data signals created by a light receiving diode) is to employ an adaptive threshold circuit. The adaptive threshold circuit generates an adapted threshold, which is a fixed threshold plus a representation of the magnitude of the data signal. As such, the adaptive threshold is based on the magnitude of the data signal, in particular, the threshold (TH)=fixed threshold +m*(magnitude of the data signal), where m is the slope, which may be 1/n, n being an integer. A difficulty arises with the adaptive threshold circuit, in that, when the magnitude of the data signal is widely varying, it may go undetected because of the representation portion of the adaptive threshold. When pulses are undetected, the transmitted data is corrupted and unusable.
Therefore, a need exists for a method and apparatus that provides an enhanced adaptive threshold circuit that allows for widely varying data signals to be accurately detected.